<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // promise API
        // let p1 = new Promise((res,rej)=>{
        //     res(100);
        // })

        // let p2 = p1.then(val=>p1);

        // console.log(p2);

        // console.log(p2==p1);

        // 1. 定义promise对象
        // 1.1 定时执行器函数（同步执行）
        // 1.1.1 执行异步操作
        // 1.1.1.1 调用resolve、reject函数

        // 2. 打印不同状态下的promise对象
        // 3. 测试执行器函数同步执行
        const p6 = new Promise((res)=>{
            // res('1');
            // throw 'ok'
            setTimeout(() => {
                res('100');
            }, 1000);
        });

        const p7 = p6.then(val=>{
            // return 'error'
            return new Promise((res,rej)=>{
                setTimeout(() => {
                    rej('err')
                }, 1000);
            });
        },rea=>{
            throw 'error2'
        }).then(val=>{
            
        },rea=>{
            
        });

        console.log(p7); 

    </script>
</body>

</html>